Программа для расчёта конструкций RFEM 6 является основой нашей модульной системы программного обеспечения. Основная программа RFEM 6 используется для задания конструкций, материалов и нагрузок плоских и пространственных конструктивных систем, состоящих из плит, стен, оболочек и стержней. Программа также позволяет создавать комбинированные конструкции, а также моделировать тела и контактные элементы.
RSTAB 9 - это мощная программа для расчёта и проектирования 3D конструкций балок, каркасов или ферм, которая которая помогает инженерам-строителям соответствовать современным требованиям и отражает последние тенденции в области строительного проектирования.
Вы часто тратите слишком много времени на расчёт сечений? Программное обеспечение Dlubal и автономная программа RSECTION облегчают вашу работу, определяя характеристики и выполняя расчёт напряжений для различных сечений.
Вы всегда знаете, откуда дует ветер? Конечно, со стороны инноваций! RWIND 2 - это программа, которая использует цифровую аэродинамическую трубу для численного моделирования потоков ветра. Программа моделирует эти потоки вокруг зданий любой геометрической формы и определяет ветровые нагрузки на поверхности.
Вам нужен обзор зон снеговой, ветровой и сейсмической нагрузок? Тогда вы находитесь по адресу. Используйте инструмент Geo-Zone Tool для быстрого и лёгкого определения снеговых нагрузок, скоростей ветра и данных по сейсмике в соответствии с ASCE 7‑16 и другими нормативами различных стран.
Хотите попробовать в работе функции программ Dlubal Software? У вас есть такая возможность! Бесплатная полная версия на 90 дней позволяет вам в полной мере попробовать в работе все наши программы.
Следующий макрос VBA показывает создание узловой опоры с нелинейностью «Частичная активность». Исходный код затем находится в разделе Загрузки.
Option Explicit
' --------------------------Sub SetNSupports()' --------------------------Dim model As RFEM5.modelDim data As IModelDataDim support(0) As RFEM5.NodalSupportDim ISup As RFEM5.INodalSupportDim ISupPA как RFEM5.IPartialActivityDim nlPA как частичная активность
e: If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source
End Sub
Способ создания узловой опоры с диаграммой нелинейности показан в следующем макросе VBA. Исходный код затем находится в разделе Загрузки.
Названия отдельных нормативов для StandardID и AnnexID можно легко отобразить с помощью следующего макроса:
cominterfaces-en\SDK\Examples\Modules\Excel\RF-STEEL_EC3.xls
Данный макрос находится в архиве описания продукта на нашем сайте (см. ссылки).
Прилагаем также краткий обзор текущих приложений:
Названия StandardID
DIN 0 Германия
ÖNORM 1 Австрия
CSN 2 Чехия
STN 3 Словакия
PN 4 Польша
SIST 5 Словения
DK 6 Дания
UNI 7 Италия
NEN 8 Нидерланды
SFS 9 Финляндия
SS 10 Швеция
NF 11 Франция
BS 12 Великобритания
CEN 13 Европейский Союз
BDS 14 Болгария
CYS 15 Кипр
LST 16 Литва
SR 17 Румыния
SS 18 Сингапур
NBN 19 Бельгия
NP 20 Португалия
UNE 21 Испания
MAL 22 Малайзия
NS 23 Норвегия
LU 24 Люксембург
ELOT 25 Греция
Запустить программу RFEM/RSTAB в фоновом режиме можно посредством инициализации переменной типа «Application (interface)» и параметра «new». При использовании данной переменной затем можно либо создать новую модель методом «CreateModel», либо с помощью команды «Close» закрыть программу.
В следующем примере потом хорошо показано, каким образом можно запустить программу RSTAB, создать в ней модель с узлом и наконец закрыть ее:
Sub RSTAB_open_close()Dim filename As Stringfilename = Application.ActiveSheet.Cells(7, 3)' start rfemDim iApp As RSTAB8.ApplicationSet iApp = New RSTAB8.ApplicationiApp.LockLicenseiApp.ShowOn Error GoTo E ' create model Dim iMod As RSTAB8.IModel2 Set iMod = iApp.CreateModel(filename) ' add data to model Dim nd As RSTAB8.Node nd.no = 10 nd.X = 1 nd.Y = 2 nd.Z = 3 Dim iModdata As RSTAB8.iModelData Set iModdata = iMod.GetModelData iModdata.PrepareModification iModdata.SetNode nd iModdata.FinishModification iMod.Save filenameE: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source Set iModdata = Nothing Set iMod = Nothing iApp.UnlockLicense iApp.Close Set iApp = Nothing End Sub
Команда «iApp.Show» необязательна, поскольку она обеспечивает стандартное отображение программы, т.е. не в фоновом режиме.
В разделе «Загрузки» затем находится макрос программы Excel со всеми соответствующими функциями для программы RFEM и RSTAB.
Не забудьте также учесть факт, что папка, в которой создается файл, должна уже существовать.
Sub test_section()' get interface from the opened model and lock the licence/program Dim iModel As RFEM5.IModel3 Set iModel = GetObject(, "RFEM5.Model") iModel.GetApplication.LockLicense On Error GoTo E Dim iSecs As RFEM5.ISections Set iSecs = iModel.GetSections()
' first delete all sections iSecs.PrepareModification iSecs.DeleteObjects ("All") iSecs.FinishModification ' set section on solid Dim sec As RFEM5.Section sec.EdgePointA.X = 2 sec.EdgePointA.Y = 5 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 8 sec.EdgePointB.Z = 0 sec.no = 1 sec.Name = "solid section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = False sec.Type = SectionOnSolidSectionLine sec.ObjectList = "1" iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' set section on surface sec.EdgePointA.X = 2 sec.EdgePointA.Y = 0 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 3 sec.EdgePointB.Z = 0 sec.no = 2 sec.Name = "surface section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = True sec.Type = SectionViaSurfacePlane sec.ObjectList = "1" sec.Vector.X = 0 sec.Vector.Y = 0 sec.Vector.Z = 1 iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' get results Dim iCalc As ICalculation2 Set iCalc = iModel.GetCalculation Dim iRes As IResults2 Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1) Dim secRes() As RFEM5.SectionResult secRes = iRes.GetResultsInSection(2, AtNo, ShearForceVy,ContinuousDistributionWithinObjects, False)
Dim model As RFEM5.modelSet model = GetObject(, "RFEM5.Model")model.GetApplication.LockLicenseOn Error GoTo eDim data As IModelDataSet data = model.GetModelDataРазмеры стержней (0) Как в RFEM5.Member стержней (0) .No = 3стержней (0) .LineNo = 12члены (0) .Type = ResultBeamType стержни (0) .StartCrossSectionNo = 1стержни (0) .EndCrossSectionNo = 1 стержни (0) .Comment = "результирующая балка 1"data.PrepareModificationэлементы data.SetMembersdata.FinishModification
Dim iMem As IMemberУстановите iMem = data.GetMember (3, AtNo) Dim iRMem как IResultBeamУстановите iRMem = iMem.GetExtraData Dim RMem как ResultBeamRMem = iRMem.GetData RMem.IncludeSurfaces = "1"RMem.IncludeSolids = "все" RMem.Integrate = WithinCuboidGeneral Дим параметры (от 0 до 3) как двойные RMem.Parameters = параметрыRMem.Parameters (0) = 0,5RMem.Parameters (1) = 0,5RMem.Parameters (2) = 0,1RMem.Parameters (3) = 0,1 data.PrepareModificationiRMem.SetData RMemdata.FinishModification
' получить интерфейс модели Set iApp = iModel.GetApplication() iApp.LockLicense ' получить интерфейс расчета Dim iCalc As RFEM5.ICalculation2 Set iCalc = iModel.GetCalculation ' получить теорию изгиба поверхностейРазмер calc_bend как в RFEM5.calc_bend = iCalc.GetBendingTheory ' получить настройки для нелинейностейDim calc_nl As RFEM5.CalculationNonlinearitiescalc_nl = iCalc.GetNonlinearities ' получить настройки точности и допускаРазмер calc_prec как в RFEM5.PrecisionAndTolerancecalc_prec = iCalc.GetPrecisionAndTolerance ' получить настройки расчетаРазмеры calc_sets в соответствии с RFEM5.CalculationSettingscalc_sets = iCalc.GetSettings ' получить параметры расчетаРазмер calc_opts как в RFEM5.CalculationOptionscalc_opts = iCalc.GetOptions ' установить для ShearStiffness значение falsecalc_opts.ShearStiffness = FalseiCalc.SetOptions calc_opts